package com.cg.big_event.controller;
import com.cg.big_event.entity.Result;
import com.cg.big_event.utils.AliOssUtil;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import java.util.UUID;
@RestController
public class FileUploadController {
    @PostMapping("/upload")
    public Result<String> upload(MultipartFile file) throws Exception {
        // 获取原始的文件名
        String originalFilename = file.getOriginalFilename();
        // 将文件保存到指定位置并将其命名为原始文件名，但是同一个文件多次上传会出现文件覆盖的问题
        //要想避免文件覆盖，我们需要保证文件名是唯一的，我们可以使用UUID来生成一个唯一的文件名
        // UUID.randomUUID().toString() 生成唯一的文件名
        // 获取原来文件的后缀
        String newFileName = UUID.randomUUID() +originalFilename.substring (originalFilename.lastIndexOf ("."));
      //file.transferTo (new File ("C:\\Users\\LHY\\Desktop\\big_event files\\"+newFileName));
       String url= AliOssUtil.uploadFile (newFileName,file.getInputStream ());
      return Result.success (url);
    }
}
